This section covers the steps to have your game display beautifully in our Gameboard Experience. It willl provide you with Android meta-data keys that will allow you to customize the look and information about your app. These will mark the difference between your app looking like (A) or beautifully like (B).

(A)

(B)

Step-by-Step

Step-by-Step

Gameboard OS by default only displays Games uploaded to our marketplace. This means that if you just run your development game on Gameboard OS it will not be seen in the Gameboard Experience. So how do we let Gameboard OS display a development app then? Well, that's where our first meta-data entry comes in:

<meta-data android:name="com.lastgameboard.is_development" android:value="true" />

Note: This needs to be inside the tags of the manifest.

Sometimes a game is not meant to be played but as a developer you would like it shown in Gameboard along other games for things like demos and presentations. In order to have your game marked as not playable the placeholder tag can be used. Make is_placeholder true will allow the game to show on Gameboard but will not be executed if anyone tries to run it.

<meta-data android:name="com.lastgameboard.is_placeholder" android:value="true" />

We know more than anyone that games need to stand out and Gameboard OS gives you the power to make your game standout as much (or as little) as you want with the following meta-data.

<meta-data android:name="com.lastgameboard.thumbnail" android:resource="@drawable/sample_small_spuno_odyssey" />
<meta-data android:name="com.lastgameboard.banner" android:resource="@drawable/sample_small_spuno_odyssey"/>
<meta-data android:name="com.lastgameboard.banner_ad" android:resource="@drawable/sample_banner_spuno"/>
<meta-data android:name="com.lastgameboard.lobby_background" android:resource="@drawable/sample_large_spuno"/>
<meta-data android:name="com.lastgameboard.screenshots" android:resource="@array/my_screenshots"/>

Sample Screenshot Array (In arrays.xml)

<array name="my_screenshots">
  <item>@drawable/sample_preview_spuno_1</item>
  <item>@drawable/sample_preview_spuno_2</item>
  <item>@drawable/sample_preview_spuno_3</item>
</array>

Gameboard OS also lets developers define the information that player will look for when picking your game.

<meta-data android:name="com.lastgameboard.max_player_count" android:value="4"/>
<meta-data android:name="com.lastgameboard.average_play_time" android:value="45"/>
<meta-data android:name="com.lastgameboard.genres" android:resource="@array/my_genres"/>

Sample Genres String Array (In arrays.xml)

<string-array name="my_genres">
  <item>light strategy</item>
  <item>strategy</item>
</string-array>
<meta-data android:name="com.lastgameboard.features" android:resource="@array/my_features"/>
<meta-data android:name="com.lastgameboard.required_features" android:resource="@array/my_required_features"/>

Currently Supported Features/Required Features String Array (In arrays.xml)

<string-array name="my_features">
  <item>companion</item>
  <item>enhanced touch</item>
  <item>subscription</item>
  <item>in-game purchases</item>
  <item>rvne enabled</item>
  <item>board-to-board</item>
  <item>revivable</item>
  <item>mods available</item>
  <item>stream play</item>
  <item>user made content</item>
  <item>network play</item>
  <item>grid enabled</item>
</string-array>

<string-array name="my_required_features">
  <item>companion</item>
</string-array>
<meta-data android:name="com.lastgameboard.publisher" android:value="Last Gameboard, Inc."/>
<meta-data android:name="com.lastgameboard.bgg_id" android:value="167791"/>
<meta-data android:name="com.lastgameboard.development_stage" android:value="Early"/>

To facilitate the creation of the metadata used by the games in Unity we have made available the Gembaord Metadata Project available here.

Clone the project in your desired location as follows:

git clone git@gitlab.com:lastgameboard/game-meta-data-template.git

Once downloaded, open the project in Android Studio and expand the gameboard-game-info module. We will be making all our changes there.

gameboard-game-info

We will be placing all the image assets for our game inside the drawables folder of the gameboard-game-info module as shown below:

gameboard-game-info

Important: The names of the files need to be lower case and contain no spaces. These names will be used when specifying them by doing @drawable/<asset_name>

All other values like the game's features go in their respective files under the values folder. Texts in the strings.xml file and feature list in the arrays.xml file.

gameboard-game-info

With all the files and values in their respective folders you can then proceed to add the metadata to the manifest of** gameboard-game-info**.

Important: You want to make sure you are updating the AndroidManifest.xml inside gameboard-game-info.

gameboard-game-info

Note: The project already has all the metadata setup so if you wish to save time when creating the metadata just replacing the image assets with the assets for your game and the values of the items in the values.xml and string.xml file will let you get your metadata relatively quickly.

Once all the metadata for the game is specified the AAR can be built using the Gradle task publishReleasePublicationToMavenLocal.

gameboard-game-info

Important: In newer versions of Android Studio the tasks are not loaded on start, so opening the Gradle panel above will display no tasks. In order to have the task show up you'll need to disable "Do not build Gradle task list during Gadle sync." under File->Settings->Experimental and restart Android Studio.

gameboad-game-info

Once publishReleasePublicationToMavenLocal has completed its execution the gameboard-game-info.aar will be available inside a folder named gbLocalRepo.

gameboad-game-info

Note: If you wish to save time you can then take that gbLocalRepo folder and drop it in the plugin folder in Unity as we'll cover in the next step but we recommend just using the gameboard-game-info.aar file so the game project doesn't get cluttered unnecessary files.

Unity needs to have the .AAR file built above included in the project.

  1. If your project doesn't already have the folders create the following folders: ./assets/Plugins/Android/libs
  2. Inside the libs folder, copy and paste the release version of the .AAR file that was compiled from Android Studio.

Important: In previous versions we recommended updating the AndroidManifest in Unity. This is no longer necessary when using the latest version of this metadata template project but if you already have an AndroidManifest.xml with Gameboard metadata inside your Unity project you'll need to remove them from Unity otherwise when adding this newly created AAR the build will fail due to conflicts in the manifest.